﻿using SlimDX.Direct3D11;
using SlimDX.DXGI;

namespace InsTron
{
    static class VertexDeclarations
    {
        private static InputElement[] inputElements_PosTexNorm;
        public static InputElement[] InputElements_PosTexNorm
        {
            get
            {
                if (inputElements_PosTexNorm == null)
                {
                    inputElements_PosTexNorm = new[] {
                        new InputElement("POSITION", 0, Format.R32G32B32_Float, 0, 0),
                        new InputElement("TEXCOORD", 0, Format.R32G32_Float, 12, 0),
                        new InputElement("NORMAL", 0, Format.R32G32B32_Float, 20, 0)
                    };
                }
                return inputElements_PosTexNorm;
            }
        }

        private static InputElement[] inputElements_PosNorm;
        public static InputElement[] InputElements_PosNorm
        {
            get
            {
                if (inputElements_PosNorm == null)
                {
                    inputElements_PosNorm = new[] {
                        new InputElement("POSITION", 0, Format.R32G32B32_Float, 0, 0),
                        new InputElement("NORMAL", 0, Format.R32G32B32_Float, 12, 0)
                    };
                }
                return inputElements_PosNorm;
            }
        }


        private static InputElement[] inputElements_PosTex;
        public static InputElement[] InputElements_PosTex
        {
            get
            {
                if (inputElements_PosTex == null)
                {
                    inputElements_PosTex = new[] {
                        new InputElement("POSITION", 0, Format.R32G32B32_Float, 0, 0),
                        new InputElement("TEXCOORD", 0, Format.R32G32_Float, 12, 0)
                    };
                }
                return inputElements_PosTex;
            }
        }


        private static InputElement[] inputElements_Pos;
        public static InputElement[] InputElements_Pos
        {
            get
            {
                if (inputElements_Pos == null)
                {
                    inputElements_Pos = new[] {
                        new InputElement("POSITION", 0, Format.R32G32B32_Float, 0, 0),
                    };
                }
                return inputElements_Pos;
            }
        }
    }
}
